package cn.hello2018.oa.biz;

import cn.hello2018.oa.entity.ClaimVoucher;
import cn.hello2018.oa.entity.ClaimVoucherItem;
import cn.hello2018.oa.entity.DealRecord;

import java.util.List;

/**
 * @author jeymingwu
 * @date 2019/2/19 14:30
 */
public interface ClaimVoucherBiz {

    // 保存报销单
    void save(ClaimVoucher claimVoucher, List<ClaimVoucherItem> items);

    // 修改报销单
    void edit(ClaimVoucher claimVoucher, List<ClaimVoucherItem> items);

    // 提交报销单
    void sumbit(int id);

    // 审核报销单
    void deal(DealRecord dealRecord);

    // 获取报销单
    ClaimVoucher get(Integer id);

    // 根据报销单编号获取报销单明细
    List<ClaimVoucherItem> getItems(Integer cvid);

    // 根据报销单编号获取报销单处理记录
    List<DealRecord> getRecords(Integer cvid);

    // 根据员工编号获取自己填写的报销单
    List<ClaimVoucher> getForSelf(String sn);

    // 根据员工编号获取自己需要处理的报销单
    List<ClaimVoucher> getForDeal(String sn);
}
